﻿<!DOCTYPE HTML>
<html lang="zh">
<head>
<title>Any - 方法 &amp; 属性 | AutoHotkey v2</title>
<meta name="description" content="Any represents the root of the AutoHotkey type hierarchy." />
<meta name="ahk:equiv-v1" content="AutoHotkey.htm" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
<script type="text/javascript">$(function(){0<=window.navigator.userAgent.toLowerCase().indexOf("ucbrowser")&&CaoNiMaDeUc()})</script>
</head>
<body>

 <h1>Any</h1>

 <p>理论上, AutoHotkey 的类型层次结构的根源在于 "Any" 类型. 所有其他类型都是 Any 的子类, 除了 <a href="../commands/ComObject.htm">ComObject</a>(在本页中不作进一步考虑). 目前 Any 类型仅作为<a href="../Objects.htm#delegation">原型对象</a>存在, 它位于每个值的基对象链的末端. 有关详细信息, 请参阅<a href="../Objects.htm#primitive">原始值</a>.</p>
<p>Any 原型对象定义了适用于所有值和对象的方法和属性, 被覆盖改写的除外. 原型对象本身本质上是一个 <a href="Object.htm">Object</a>, 但是没有 <code>base</code>, 因此不能识别为对象的实例.</p>

 <p><strong>方法:</strong></p>
<ul>
  <li><a href="#GetMethod">GetMethod</a></li>
  <li><a href="#HasBase">HasBase</a></li>
  <li><a href="#HasMethod">HasMethod</a></li>
  <li><a href="#HasProp">HasProp</a></li>
</ul>
<p><strong>属性:</strong></p>
<ul>
	<li><a href="#Base">Base</a></li>
</ul>
<p><strong>函数:</strong></p>
<ul>
	<li><a href="#GetBase">ObjGetBase</a></li>
</ul>

 <h2 id="Methods">方法</h2>

 <div class="methodShort" id="GetMethod"><h2>GetMethod</h2>
<p>检索方法的实现函数.</p>
<pre class="Syntax">Value.<span class="func">GetMethod</span>(Name)</pre>
<p>除非被覆盖, 否则这个方法完全相同于 <code>GetMethod(Value, Name)</code>.</p>
</div>

 <div class="methodShort" id="HasBase"><h2>HasBase</h2>
<p>如果 <em>BaseObj</em> 在 <em>Value</em> 的基对象链中, 则返回 true, 否则返回 false.</p>
<pre class="Syntax">Value.<span class="func">HasBase</span>(BaseObj)</pre>
<p>除非被覆盖, 否则这个方法完全相同于 <code>HasBase(Value, BaseObj)</code>.</p>
</div>

 <div class="methodShort" id="HasMethod"><h2>HasMethod</h2>
<p>如果该值具有使用此名称的方法, 则返回 true, 否则返回 false.</p>
<pre class="Syntax">Value.<span class="func">HasMethod</span>(Name)</pre>
<p>除非被覆盖, 否则这个方法完全相同于 <code>HasMethod(Value, Name)</code>.</p>
</div>

 <div class="methodShort" id="HasProp"><h2>HasProp</h2>
<p>如果值具有使用此名称的属性, 则返回 true, 否则返回 false.</p>
<pre class="Syntax">Value.<span class="func">HasProp</span>(Name)</pre>
<p>除非被覆盖, 否则这个方法完全相同于 <code>HasProp(Value, Name)</code>.</p>
</div>

 <h2 id="Properties">属性</h2>

 <div class="methodShort" id="Base"><h2>Base</h2>
<p>检索值的<a href="../Objects.htm#delegation">基对象</a>.</p>
<pre class="Syntax">BaseObj := Value.Base</pre>
<p>对于<a href="../Objects.htm#primitive">原始值</a>, 返回值是与 <code>Type(Value)</code> 对应的预定义原型对象.</p>
<p>另请参阅: <a href="#GetBase">ObjGetBase</a>, <a href="Object.htm#SetBase">ObjSetBase</a>, <a href="Object.htm#Base">Obj.Base</a></p>
</div>

 <h2 id="Functions">函数</h2>

 <div class="methodShort" id="GetBase"><h2>ObjGetBase</h2>
<p>返回值的<a href="../Objects.htm#delegation">基对象</a>.</p>
<pre class="Syntax">BaseObj := <span class="func">ObjGetBase</span>(Value)</pre>
<p>不调用<a href="../Objects.htm#Meta_Functions">元函数</a>或<a href="../Objects.htm#Custom_Classes_property">属性函数</a>. 覆盖 <a href="#Base">Base</a> 属性不会影响此函数的行为.</p>
<p>如果没有基, 则返回值为空字符串. 只有 COM 对象和 Any 原型本身没有基.</p>
<p>另请参阅: <a href="#Base">Base</a>, <a href="Object.htm#SetBase">ObjSetBase</a>, <a href="Object.htm#Base">Obj.Base</a></p>
</div>

 </body>
</html>